home *** CD-ROM | disk | FTP | other *** search
- /****************************************************************************************
- RootMenu.h
-
- Copyright © 1999 Red Shed Software. All rights reserved.
- by Jonathan 'Wolf' Rentzsch (jon@redshed.net)
-
- Commenter Date Comment
- --------- ----------------- -----------------------------------------------------
- wolf Fri, Jun 25, 1999 Created.
-
- ************************************************************************************/
-
- #ifndef _RootMenu_
- #define _RootMenu_
-
- #include "list.h"
-
- class AbstractMenuWindow {
- public:
- AbstractMenuWindow();
-
- virtual
- ~AbstractMenuWindow();
-
- virtual
- void
- Draw(){}
-
- virtual
- void
- MouseDown(
- EventRecord */*event*/ ){}
-
- virtual
- WindowPtr
- window() const
- { return( (WindowPtr) &window_ ); }
- protected:
- WindowRecord window_;
- };
-
- class RootMenu : public AbstractMenuWindow {
- public:
- RootMenu();
-
- virtual
- void
- Draw();
-
- virtual
- void
- MouseDown(
- EventRecord *event );
- };
-
- class NormalMenu : public AbstractMenuWindow {
- public:
- NormalMenu(
- MenuHandle menu,
- bool apple = false );
-
- virtual
- void
- Draw();
-
- virtual
- void
- MouseDown(
- EventRecord *event );
- protected:
- MenuHandle menu_;
- bool apple_;
- };
-
- extern list< AbstractMenuWindow* > gMenus;
-
- class CleanUp {
- public:
- ~CleanUp();
- };
-
- #endif // _RootMenu_